/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package simulador;

import com.thoughtworks.xstream.XStream;
import java.io.FileWriter;
import java.io.IOException;

/**
 *
 * @author Cesar
 */
public class LogicaGenerador {

    private Parametros parametros = new Parametros();
    private Generador generador;

    public LogicaGenerador() {
        leerParametros();
//        for(int i = 1; i<47; i++){
            generarVuelos();
//            exportarArchivoXml(i);
            exportarArchivoXml();
//        }
    }

    private void leerParametros() {
        parametros.leerParametros();
    }

    private void exportarArchivoXml(int i) {
        XStream xs = new XStream();
        try {
            FileWriter archivoVuelos = new FileWriter("vuelos" + i + ".xml");
            FileWriter archivoAlmacenes = new FileWriter("almacenes.xml");
            FileWriter archivoCiudades = new FileWriter("ciudades.xml");
            String ciudades = xs.toXML(parametros.getCiudades());
            String almacenes = xs.toXML(parametros.getAlmacenes());
            String vuelos = xs.toXML(generador.generarVuelos());
            archivoCiudades.write(ciudades);
            archivoAlmacenes.write(almacenes);
            archivoVuelos.write(vuelos);
            archivoCiudades.close();
            archivoAlmacenes.close();
            archivoVuelos.close();
        } catch (IOException e) {
            System.out.println(e.toString());
        }
    }

      private void exportarArchivoXml() {
        XStream xs = new XStream();
        try {
            FileWriter archivoVuelos = new FileWriter("vuelosHistoricos.xml");
            FileWriter archivoAlmacenes = new FileWriter("almacenes.xml");
            FileWriter archivoCiudades = new FileWriter("ciudades.xml");
            String ciudades = xs.toXML(parametros.getCiudades());
            String almacenes = xs.toXML(parametros.getAlmacenes());
            String vuelos = xs.toXML(generador.generarVuelos());
            archivoCiudades.write(ciudades);
            archivoAlmacenes.write(almacenes);
            archivoVuelos.write(vuelos);
            archivoCiudades.close();
            archivoAlmacenes.close();
            archivoVuelos.close();
        } catch (IOException e) {
            System.out.println(e.toString());
        }
    }
    
    private void generarVuelos() {
        generador = new Generador(parametros, 200);
//        generador.generarVuelos();
    }
}
